package com.sky.mapper;

import com.sky.entity.Orders;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

@Mapper
public interface OrderMapper {

  void insert(Orders orders);

  /**
   * 根据订单状态和下单时间查询订单
   * @param status
   * @param orderTime
   * @return
   */
  @Select("select * from orders where status=#{status} and order_time < #{orderTime}")
  List<Orders> selectTimeOutOrder(Integer status, LocalDateTime orderTime);
  /**
   * 根据动态条件统计订单数量
   * @param map
   * @return
   */
  Integer countByMap(Map map);


  /**
   * 根据动态条件统计营业额数据
   * @param map
   * @return
   */
  Double sumByMap(Map map);

}
